<?php

namespace Emergine\Interfaces
{
/**
   * CCI -- Common Control Interface (CCI)
   * @version: 1.0
   * @author: Hleb Piatrou <h.piatrou@softteco.com>
   * @link: http://code.google.com/p/emergine/
   * @copyright: Copyright 2011-2012 Hleb Piatrou
   * @license: MIT License http://www.opensource.org/licenses/mit-license.php
   * @interface: Common Control Interface (CCI)
   */
    interface Settings
	{
		/**
		 * ObjectContent() function
		 *  
		 * Method, which returns the content of settings as an StdObject
		 * Usage:
		 * <code>
		 * $object_content = Models::ObjectContent();
		 * print_r($object_content);
		 * </code>
		 * @access: public
		 * @param: none
		 * @return: object
		 */				
		public function ObjectContent();
		/**
		 * DBOptions() function
		 *  
		 * Method, which returns the options of database configuration
		 * Usage:
		 * <code>
		 * $username = DBOptions('username'); // gets the username of DB
		 * printf($username);
		 * </code>
		 * @access: public
		 * @param: $option - name of configuration option
		 * @return: string
		 */
		public function DBOptions($option);
		/**
		 * Files() function
		 *  
		 * Method, which returns the names of system files
		 * <code>
		 * $file = Files('models'); // gets the name of models file
		 * printf($file); 
		 * </code>
		 * @access: public
		 * @param: $option - name of configuration option
		 * @return: string
		 */		
		public function Files($option);
	}
}
